1. Field of the Invention
This invention relates to the field of power management and power management apparatus, in particular power management integrated circuits, for supplying and regulating power to electrical devices, in particular to portable electrical devices.
2. Description of the Related Art
Many electrical devices include some sort of power management functionality. A power management unit, which is typically an integrated circuit, is typically arranged to receive power from a power supply, which may be one of a plurality of possible power supplies, and provide appropriately controlled and regulated power to one or more power domains within an electrical device in response to the power requirements thereof. As used in this specification the term “device” is taken to refer to an electrical product, such as a mobile telephone, personal computer, media player or the like whether portable or not or any other battery operated device.
Various device functions, i.e. device sub-systems, may be separately powered and form separate power domains within the device. Power domains may also exist where different sub-systems within the device operate at different voltages. A power domain therefore comprises one or more device sub-systems which receive a common power supply. Different power domains may be powered independently of one another and/or supplied with different voltages to one another.
The power management unit is therefore typically arranged with a plurality of power blocks, each power block being mapped and connected to a particular power domain to control and regulate the power supply thereto. As used herein the term “power block” refers to circuitry for providing an appropriate power supply to an individual power domain. The power blocks, which typically comprise some sort of voltage regulator (e.g. a linear regulator, a switch-mode converter using an inductance or a charge pump or any combination thereof) or power switch, are typically arranged with various configuration settings that allow parametric control of the power blocks. For example the output voltage, current limits and modes of operation can be specified by appropriate control of the configuration settings.
Typically the configuration settings are held in a store, such as a plurality of registers, in the power management unit in operation. The settings can be updated in use by the control circuitry of the power management apparatus to reflect any necessary changes occurring through use of the device, e.g. the voltage level supplied by the power management unit to a power domain of the device can be altered as necessary in response to a suitable command/control signal. Conveniently, an operating system of the device is arranged to determine the power requirements of the device and send appropriate control/command signals to the power management unit.
It will be appreciated however that the device operating system needs to be operational to control the power management unit. During start-up of the device operating system itself the power management unit has to use default configuration settings to configure the power blocks in order that the device can start to operate correctly. This start-up process is commonly referred to as a bootstrapping or boot procedure and the settings used in starting the device are referred to as boot settings.
The boot settings need to be available to the power management unit in start-up from an initial condition where any control registers or the like have been unpowered and hence do not hold any data.
Most devices with power management units are therefore provided with a non-volatile memory (NVM) arrangement for providing the boot settings for the power management unit.
The boot settings may comprise settings which determine which power blocks are enabled in a boot sequence and what the output voltage of each active power block is. The boot settings may also set the operating mode of the power block and/or a current limit or the output current of a current source or any other configurable property of the power block. The boot settings may also comprise settings indicating a sequence in which the power blocks should be enabled. The boot settings may also include various settings for configuring the power management integrated circuit (PMIC) itself. For instance the PMIC may be provided with various pins that may be used for different purposes in different device designs, for example a main power control button of the device may be assigned to a general purpose pin of the PMIC and the boot settings may configure the function of the general purpose pins such that the PMIC recognises a signal on the appropriate pin as a power state transition command.
In some devices it can be beneficial to start-up various device sub-systems in a predetermined order. At least some of the power domains of the device may be connected to one another, i.e. signals may be transmitted by circuitry in one power domain to circuitry in another power domain, possibly via level shifting circuitry. Depending on the various circuits forming the power domains there may be a need to power some domains before others to prevent a corrupted boot process or even damage to the device as a result of consequent signal misinterpretation.
Power management units may therefore be provided with a sequencer for activating and deactivating the power blocks which supply the various power domains within the device in a predetermined sequence. This predetermined sequence can be stored in the NVM as part of the boot settings.
Typically power management units are formed as integrated circuits and the NVM is formed integrally within the power management integrated circuit. The NVM may be provided in the form of hard-wired register defaults or a read only memory (ROM) arrangement that is fixed at the time of manufacture of the power management unit. Alternatively integrated NVM may be One Time Programmable (OTP) NVM, i.e. memory that can be written to or programmed only once and, once programmed, can not be readily altered. Alternatively integrated NVM may be reprogrammable NVM such as EEPROM or Flash memory. Use of OTP or reprogrammable NVM rather than a hard-wired or read only type of memory arrangement allows for the same design of power management unit to be programmed in different ways to suit different applications. It also means that the power management unit can be manufactured without needing to know the relevant boot settings for the device it will be used in as it can later be programmed with the appropriate boot settings for the particular device it will be used in.
The use of OTP NVM allows the boot settings for the power management unit to be programmed and retained for use in a cold start-up or boot sequence. However, the boot settings loaded into OTP NVM can't readily be changed once programmed into the NVM. During normal device operation there should be no need to update the boot settings and use of OTP NVM is convenient.
However, occasionally a device may develop errors which lead to a problem with the normal boot sequence. This may result in the device being unable to complete the boot sequence and therefore being unable to correctly start the operating system of the device. If the device operating system can not be started it may not be possible to run any internal diagnostic or repair routines. The boot settings, being stored in OTP NVM, can't be readily changed and hence the start up configuration can't be altered. Thus it can be very difficult to debug the device.
Also during device development it may be wished to try a variety of different boot settings. Using power management units having internal OTP NVM this would require a number of different test devices to be produced, each having a different power management unit with an appropriately programmed NVM.